/*
 * Copyright 2020-2020 yanchangyou
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// This is a generated file. Not intended for manual editing.

package my.lang.psi;

import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.PsiElement;

public class MyLanguageVisitor<R> extends PsiElementVisitor {

  public R visitAllExpress(@NotNull MyLanguageAllExpress o) {
    return visitPsiElement(o);
  }

  public R visitAllIdentifier(@NotNull MyLanguageAllIdentifier o) {
    return visitPsiElement(o);
  }

  public R visitAllValue(@NotNull MyLanguageAllValue o) {
    return visitPsiElement(o);
  }

  public R visitAssignExpress(@NotNull MyLanguageAssignExpress o) {
    return visitPsiElement(o);
  }

  public R visitAssignStatement(@NotNull MyLanguageAssignStatement o) {
    return visitPsiElement(o);
  }

  public R visitBoolean(@NotNull MyLanguageBoolean o) {
    return visitPsiElement(o);
  }

  public R visitCodes(@NotNull MyLanguageCodes o) {
    return visitPsiElement(o);
  }

  public R visitFlowDefineStatement(@NotNull MyLanguageFlowDefineStatement o) {
    return visitPsiElement(o);
  }

  public R visitJsonAllExpress(@NotNull MyLanguageJsonAllExpress o) {
    return visitPsiElement(o);
  }

  public R visitJsonArrayExpress(@NotNull MyLanguageJsonArrayExpress o) {
    return visitPsiElement(o);
  }

  public R visitJsonDefineStatement(@NotNull MyLanguageJsonDefineStatement o) {
    return visitPsiElement(o);
  }

  public R visitJsonObjectExpress(@NotNull MyLanguageJsonObjectExpress o) {
    return visitPsiElement(o);
  }

  public R visitKeyValueExpress(@NotNull MyLanguageKeyValueExpress o) {
    return visitPsiElement(o);
  }

  public R visitRefExpress(@NotNull MyLanguageRefExpress o) {
    return visitPsiElement(o);
  }

  public R visitReturnStatement(@NotNull MyLanguageReturnStatement o) {
    return visitPsiElement(o);
  }

  public R visitServiceCallExpress(@NotNull MyLanguageServiceCallExpress o) {
    return visitPsiElement(o);
  }

  public R visitServiceDefineStatement(@NotNull MyLanguageServiceDefineStatement o) {
    return visitPsiElement(o);
  }

  public R visitServiceInvokeStatement(@NotNull MyLanguageServiceInvokeStatement o) {
    return visitPsiElement(o);
  }

  public R visitServiceJsonExpress(@NotNull MyLanguageServiceJsonExpress o) {
    return visitPsiElement(o);
  }

  public R visitServiceParam(@NotNull MyLanguageServiceParam o) {
    return visitPsiElement(o);
  }

  public R visitStatement(@NotNull MyLanguageStatement o) {
    return visitPsiElement(o);
  }

  public R visitSubAllExpress(@NotNull MyLanguageSubAllExpress o) {
    return visitPsiElement(o);
  }

  public R visitUsiExpress(@NotNull MyLanguageUsiExpress o) {
    return visitPsiElement(o);
  }

  public R visitValue(@NotNull MyLanguageValue o) {
    return visitPsiElement(o);
  }

  public R visitPsiElement(@NotNull PsiElement o) {
    visitElement(o);
    return null;
  }

}
